package com.abetsy.vben.service;

import com.abetsy.vben.entity.util.ProxyInfo;
import com.abetsy.vben.param.DramaSharePreviewParam;
import com.abetsy.vben.param.ShareDramaListParam;
import com.abetsy.vben.param.ShareDramaParam;
import com.abetsy.vben.param.SharePreviewParam;
import com.abetsy.vben.vo.DramaDetailsVo;
import com.abetsy.vben.vo.DramaVo;
import com.abetsy.vben.vo.ShareDramaInfoVo;
import org.springframework.http.ResponseEntity;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface TMDBService {

    /**
     * 获取代理状态
     */
    ProxyInfo proxyInfo();

    /**
     * 查询代理状态
     */
    ProxyInfo getProxyInfo();

    /**
     * 获取代理状态
     */
    ProxyInfo proxyInfo(Integer userId);

    /**
     * 图片代理
     */
    ResponseEntity<byte[]> proxyImage(String imagePath);

    /**
     * Drama搜索代理
     */
    List<DramaVo> searchDrama(String dramaName, HttpServletRequest request);

    /**
     * Drama搜索代理
     */
    DramaDetailsVo dramaDetails(Integer id, HttpServletRequest request);

    /**
     * Drama资源预览
     */
    ShareDramaInfoVo dramaPreview(DramaSharePreviewParam param);

    /**
     * Drama资源保存
     */
    Object dramaShare(ShareDramaParam param);

    /**
     * Drama资源列表
     */
    Object dramaList(ShareDramaListParam param);

    /**
     * 资源预览
     */
    ShareDramaInfoVo sharePreview(SharePreviewParam param);

    /**
     * 资源删除
     */
    Object shareDelete(SharePreviewParam param);
}
